﻿using PHMEE.ToolKits;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;

namespace PHMEE.Admin
{
    public interface IPointAppService : IApplicationService
    {
        Task<PointDto> GetPointByIdAsync(Guid id);
        Task<PagedResultDto<PointDto>> GetPagedPointsAsync(PointListDto input);
        Task<Guid> CreatePointAsync(PointCreateDto input);
        Task UpdatePointAsync(PointUpdateDto input);
        Task DeletePointAsync(Guid id);
        List<OperationOptionInt> GetPointCategories();
        List<OperationOptionInt> GetPointTypes(PointCategoryEnum pointCategory);

        List<OperationOptionInt> GetPointPositions();

        List<OperationOptionInt> GetPointDirections();

        List<OperationOptionInt> GetPointDiagnosisAlgs();

        Task<List<OperationOptionInt>> GetPointTagOptions(Guid ownerId, string ownerType);
    }
}
